package exceptions

/* 基类 */
open class BaseException(message: String, val code: Int = 400) : Exception(message)

/* 公共 */
class BlackListException(message: String = "黑名单", code: Int = 40001) : BaseException(message, code)
class ErrorBotIdException(message: String = "错误的 bot ID", code: Int = 40002) : BaseException(message, code)

/* 投递 */
class FrequentSendException(message: String = "用户投递太频繁", code: Int = 40003) : BaseException(message, code)
class IllegalContentException(message: String = "不良内容", code: Int = 40004) : BaseException(message, code)
class ExternalException(message: String = "外部异常", code: Int = 500) : BaseException(message, code)

/* 捞起 */
class TooManyPickException(message: String = "用户捞起的瓶子太多了", code: Int = 40005) : BaseException(message, code)
class NoBottleException(message: String = "海里没有瓶子", code: Int = 40006) : BaseException(message, code)